home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 25 / CU Amiga Magazine's Super CD-ROM 25 (1998)(EMAP Images)(GB)(Track 1 of 2)[!][issue 1998-08].iso / CUCD / Magazine / C_Tutorial / Part-13 / PatchLib / source / makefile < prev    next >
Encoding:
Makefile  |  1997-12-10  |  1.5 KB  |  69 lines

  1. ###############################################################################
  2. #
  3. #    Converts the AmigaDOS hunk format object for GCC compatibility.
  4. #
  5. ###############################################################################
  6.  
  7. define hunk2gcc
  8. hunk2gcc >nil: $*.o; \
  9. delete >nil: $*.o; \
  10. /c/join >nil: obj.#? as $*.o; \
  11. delete >nil: obj.#?;
  12. endef
  13.  
  14.  
  15. .SUFFIXES: .c .o .asm .a
  16.  
  17. #C_OBJS := $(patsubst %.c,%.o,$(wildcard *.c))
  18.  
  19. C_OBJS := StartUp.o \
  20.     AddPatchNotifyA.o \
  21.     CommonFuncs.o \
  22.     CreatePatchProjectA.o \
  23.     FindPatch.o \
  24.     FindPatchTagsA.o \
  25.     GetPatchA.o \
  26.     InstallPatchTagsA.o \
  27.     GetPatchProjectA.o \
  28.     IRFuncs.o \
  29.     InstallPatch.o \
  30.     PatchAlloc.o \
  31.     PatchFreeVec.o \
  32.     RemPatchNotifyA.o \
  33.     RemovePatch.o \
  34.     RemovePatchHandler.o \
  35.     RemovePatchProjectA.o \
  36.     RemovePatchTagsA.o \
  37.     SetPatchA.o \
  38.     SetPatchProjectA.o \
  39.     WaitRemovePatch.o \
  40.     Patch_Lowlevel.o
  41.  
  42. STARTUP :=     LibInit.o
  43.  
  44. CFLAGS :=    -DCPU_68000 -m68000 -noixemul -nostdlib -nostartfiles \
  45.         -I. -IADE:include -Iinclude \
  46.         -O2 -fstrength-reduce -fomit-frame-pointer -s -msmall-code -fbaserel
  47.  
  48. AFLAGS :=    -m
  49. LIBS :=        -L. -lnix -lgcc -lamiga -lpatch
  50.  
  51. .c.o:
  52.     gcc -c $(CFLAGS) $<
  53.  
  54. .asm.o:
  55.     OMA $< $(AFLAGS) -o $@ 
  56.     $(hunk2gcc)
  57.  
  58. OBJS    = $(STARTUP) Funcs.o $(C_OBJS) 
  59.  
  60.  
  61. patch.library:    $(OBJS)
  62.         gcc $(CFLAGS) -o $@ $(OBJS) $(LIBS)
  63.  
  64. include/inline/patch.h: include/fd/patch_lib.fd include/clib/patch_protos.h
  65.     fd2inline include/fd/patch_lib.fd include/clib/patch_protos.h -o include/inline/patch.h
  66.  
  67. include/proto/patch.h: include/fd/patch_lib.fd
  68.     FD2Pragma include/fd/patch_lib.fd SPECIAL 35 TO include/proto/
  69.